(require (planet schematics/schemeunit:3))

(define (square x) (* x x))
(define (soma-quadrado-2-maiores a b c)
  (cond ((and (>= a c) (>= b c)) (+ (square a) (square b)))
        ((and (>= a b) (>= c b)) (+ (square a) (square c)))
        (else (+ (square b) (square c)))
        )
  )

(define teste-suite
  (test-suite
   "Exercício 1.03"
   (check-equal? (soma-quadrado-2-maiores -4 -5 -6) 41)
   (check-equal? (soma-quadrado-2-maiores 5 5 4) 50)
   (check-equal? (soma-quadrado-2-maiores 5 4 4) 41)   
   (test-case
    "A ordem não importa"
    (check-equal? (soma-quadrado-2-maiores 4 5 6) 61)
    (check-equal? (soma-quadrado-2-maiores 4 6 5) 61)
    (check-equal? (soma-quadrado-2-maiores 6 4 5) 61)
    (check-equal? (soma-quadrado-2-maiores 6 5 4) 61)
    (check-equal? (soma-quadrado-2-maiores 5 4 6) 61)    
    (check-equal? (soma-quadrado-2-maiores 5 6 4) 61)        
   )
  )
 )
 

(require (planet schematics/schemeunit:3/text-ui))
(run-tests teste-suite)